home *** CD-ROM | disk | FTP | other *** search
/ PC Plus SuperCD (UK) 1998 August / PC Plus SuperCD 50a Issue 142 (CD142a) (August 1998).iso / trial / demon / TURNPIKE.1 / CLASSES.ZIP / sun / AWT / WIN32 / Win32Graphics.class (.txt) < prev    next >
Encoding:
Java Class File  |  1997-04-14  |  3.8 KB  |  242 lines

  1. package sun.awt.win32;
  2.  
  3. import java.awt.Color;
  4. import java.awt.Font;
  5. import java.awt.FontMetrics;
  6. import java.awt.Graphics;
  7. import java.awt.Rectangle;
  8. import java.awt.image.ImageObserver;
  9. import sun.awt.image.Image;
  10. import sun.awt.image.ImageRepresentation;
  11. import sun.awt.image.OffScreenImageSource;
  12.  
  13. public class Win32Graphics extends Graphics {
  14.    int pData;
  15.    Color foreground;
  16.    Font font;
  17.    int originX;
  18.    int originY;
  19.    private Image image;
  20.  
  21.    private native void createFromComponent(MComponentPeer var1);
  22.  
  23.    private native void createFromGraphics(Win32Graphics var1);
  24.  
  25.    private native void createFromPrintJob(Win32PrintJob var1);
  26.  
  27.    private native void imageCreate(ImageRepresentation var1);
  28.  
  29.    private native void pSetFont(Font var1);
  30.  
  31.    private native void pSetForeground(Color var1);
  32.  
  33.    Win32Graphics(Win32PrintJob var1) {
  34.       this.createFromPrintJob(var1);
  35.    }
  36.  
  37.    Win32Graphics(Win32Graphics var1) {
  38.       this.createFromGraphics(var1);
  39.    }
  40.  
  41.    Win32Graphics(MComponentPeer var1) {
  42.       this.createFromComponent(var1);
  43.    }
  44.  
  45.    public Win32Graphics(Win32Image var1) {
  46.       OffScreenImageSource var2 = (OffScreenImageSource)((Image)var1).getSource();
  47.       this.imageCreate(var2.getImageRep());
  48.       this.image = var1;
  49.    }
  50.  
  51.    public Graphics create() {
  52.       Win32Graphics var1 = new Win32Graphics(this);
  53.       var1.foreground = this.foreground;
  54.       var1.font = this.font;
  55.       var1.originX = this.originX;
  56.       var1.originY = this.originY;
  57.       var1.image = this.image;
  58.       return var1;
  59.    }
  60.  
  61.    public void translate(int var1, int var2) {
  62.       this.originX += var1;
  63.       this.originY += var2;
  64.    }
  65.  
  66.    public native void dispose();
  67.  
  68.    public void setFont(Font var1) {
  69.       if (var1 != null && this.font != var1) {
  70.          this.font = var1;
  71.          this.pSetFont(var1);
  72.       }
  73.  
  74.    }
  75.  
  76.    public Font getFont() {
  77.       return this.font;
  78.    }
  79.  
  80.    public FontMetrics getFontMetrics(Font var1) {
  81.       return Win32FontMetrics.getFontMetrics(var1);
  82.    }
  83.  
  84.    public void setColor(Color var1) {
  85.       if (var1 != null && var1 != this.foreground) {
  86.          this.foreground = var1;
  87.          this.pSetForeground(var1);
  88.       }
  89.  
  90.    }
  91.  
  92.    public Color getColor() {
  93.       return this.foreground;
  94.    }
  95.  
  96.    public native void setPaintMode();
  97.  
  98.    public native void setXORMode(Color var1);
  99.  
  100.    public Rectangle getClipRect() {
  101.       Rectangle var1 = new Rectangle();
  102.       this.getClipRect(var1);
  103.       return var1;
  104.    }
  105.  
  106.    native void getClipRect(Rectangle var1);
  107.  
  108.    public native void clipRect(int var1, int var2, int var3, int var4);
  109.  
  110.    public native void clearRect(int var1, int var2, int var3, int var4);
  111.  
  112.    public native void fillRect(int var1, int var2, int var3, int var4);
  113.  
  114.    public native void drawRect(int var1, int var2, int var3, int var4);
  115.  
  116.    public native void drawString(String var1, int var2, int var3);
  117.  
  118.    public native void drawChars(char[] var1, int var2, int var3, int var4, int var5);
  119.  
  120.    public native void drawBytes(byte[] var1, int var2, int var3, int var4, int var5);
  121.  
  122.    public native int drawStringWidth(String var1, int var2, int var3);
  123.  
  124.    public native int drawCharsWidth(char[] var1, int var2, int var3, int var4, int var5);
  125.  
  126.    public native int drawBytesWidth(byte[] var1, int var2, int var3, int var4, int var5);
  127.  
  128.    public native void drawLine(int var1, int var2, int var3, int var4);
  129.  
  130.    public boolean drawImage(java.awt.Image var1, int var2, int var3, ImageObserver var4) {
  131.       if (var1 == null) {
  132.          return true;
  133.       } else {
  134.          Win32Image var5 = (Win32Image)var1;
  135.          if (((Image)var5).hasError()) {
  136.             if (var4 != null) {
  137.                var4.imageUpdate(var1, 192, -1, -1, -1, -1);
  138.             }
  139.  
  140.             return false;
  141.          } else {
  142.             ImageRepresentation var6 = var5.getImageRep(-1, -1);
  143.             return var6.drawImage(this, var2, var3, (Color)null, var4);
  144.          }
  145.       }
  146.    }
  147.  
  148.    public boolean drawImage(java.awt.Image var1, int var2, int var3, int var4, int var5, ImageObserver var6) {
  149.       if (var1 != null && var4 != 0 && var5 != 0) {
  150.          Win32Image var7 = (Win32Image)var1;
  151.          if (((Image)var7).hasError()) {
  152.             if (var6 != null) {
  153.                var6.imageUpdate(var1, 192, -1, -1, -1, -1);
  154.             }
  155.  
  156.             return false;
  157.          } else {
  158.             if (var4 < 0) {
  159.                var4 = -1;
  160.             }
  161.  
  162.             if (var5 < 0) {
  163.                var5 = -1;
  164.             }
  165.  
  166.             ImageRepresentation var8 = var7.getImageRep(var4, var5);
  167.             return var8.drawImage(this, var2, var3, (Color)null, var6);
  168.          }
  169.       } else {
  170.          return true;
  171.       }
  172.    }
  173.  
  174.    public boolean drawImage(java.awt.Image var1, int var2, int var3, Color var4, ImageObserver var5) {
  175.       if (var1 == null) {
  176.          return true;
  177.       } else {
  178.          Win32Image var6 = (Win32Image)var1;
  179.          if (((Image)var6).hasError()) {
  180.             if (var5 != null) {
  181.                var5.imageUpdate(var1, 192, -1, -1, -1, -1);
  182.             }
  183.  
  184.             return false;
  185.          } else {
  186.             ImageRepresentation var7 = var6.getImageRep(-1, -1);
  187.             return var7.drawImage(this, var2, var3, var4, var5);
  188.          }
  189.       }
  190.    }
  191.  
  192.    public boolean drawImage(java.awt.Image var1, int var2, int var3, int var4, int var5, Color var6, ImageObserver var7) {
  193.       if (var1 != null && var4 != 0 && var5 != 0) {
  194.          Win32Image var8 = (Win32Image)var1;
  195.          if (((Image)var8).hasError()) {
  196.             if (var7 != null) {
  197.                var7.imageUpdate(var1, 192, -1, -1, -1, -1);
  198.             }
  199.  
  200.             return false;
  201.          } else {
  202.             if (var4 < 0) {
  203.                var4 = -1;
  204.             }
  205.  
  206.             if (var5 < 0) {
  207.                var5 = -1;
  208.             }
  209.  
  210.             ImageRepresentation var9 = var8.getImageRep(var4, var5);
  211.             return var9.drawImage(this, var2, var3, var6, var7);
  212.          }
  213.       } else {
  214.          return true;
  215.       }
  216.    }
  217.  
  218.    public native void copyArea(int var1, int var2, int var3, int var4, int var5, int var6);
  219.  
  220.    public native void drawRoundRect(int var1, int var2, int var3, int var4, int var5, int var6);
  221.  
  222.    public native void fillRoundRect(int var1, int var2, int var3, int var4, int var5, int var6);
  223.  
  224.    public native void drawPolygon(int[] var1, int[] var2, int var3);
  225.  
  226.    public native void fillPolygon(int[] var1, int[] var2, int var3);
  227.  
  228.    public native void drawOval(int var1, int var2, int var3, int var4);
  229.  
  230.    public native void fillOval(int var1, int var2, int var3, int var4);
  231.  
  232.    public native void drawArc(int var1, int var2, int var3, int var4, int var5, int var6);
  233.  
  234.    public native void fillArc(int var1, int var2, int var3, int var4, int var5, int var6);
  235.  
  236.    public String toString() {
  237.       return this.getClass().getName() + "[" + this.originX + "," + this.originY + "]";
  238.    }
  239.  
  240.    public native void close(Win32PrintJob var1);
  241. }
  242.